/*
 * My97 DatePicker 4.72 Release
 * License: http://www.my97.net/dp/license.asp
 */
var $dp, WdatePicker;
(function() {
	var _ = {
		$wdate: true,
		$dpPath: "",
		$crossFrame: true,
		doubleCalendar: false,
		enableKeyboard: true,
		enableInputMask: true,
		autoUpdateOnChanged: null,
		whichDayIsfirstWeek: 4,
		position: {},
		lang: "auto",
		skin: "default",
		dateFmt: "yyyy-MM-dd",
		realDateFmt: "yyyy-MM-dd",
		realTimeFmt: "HH:mm:ss",
		realFullFmt: "%Date %Time",
		minDate: "1900-01-01 00:00:00",
		maxDate: "2099-12-31 23:59:59",
		startDate: "",
		alwaysUseStartDate: false,
		yearOffset: 1911,
		firstDayOfWeek: 0,
		isShowWeek: false,
		highLineWeekDay: true,
		isShowClear: true,
		isShowToday: true,
		isShowOK: true,
		isShowOthers: true,
		readOnly: false,
		errDealMode: 0,
		autoPickDate: null,
		qsEnabled: true,
		autoShowQS: false,

		specialDates: null,
		specialDays: null,
		disabledDates: null,
		disabledDays: null,
		opposite: false,
		onpicking: null,
		onpicked: null,
		onclearing: null,
		oncleared: null,
		ychanging: null,
		ychanged: null,
		Mchanging: null,
		Mchanged: null,
		dchanging: null,
		dchanged: null,
		Hchanging: null,
		Hchanged: null,
		mchanging: null,
		mchanged: null,
		schanging: null,
		schanged: null,
		eCont: null,
		vel: null,
		errMsg: "",
		quickSel: [],
		has: {}
	};
	WdatePicker = U;
	var cookiename = "language";
	var arr, reg = new RegExp("(^| )" + cookiename + "=([^;]*)(;|$)");
	if (document.cookie.match(reg) == null) {
		_.lang = "zh";
	} else {
		arr = document.cookie.match(reg);
		_.lang = unescape(arr[2]);
	}
	var X = window,
		O = "document",
		J = "documentElement",
		C = "getElementsByTagName",
		V, A, T, I, b;
	switch (navigator.appName) {
		case "Microsoft Internet Explorer":
			T = true;
			break;
		case "Opera":
			b = true;
			break;
		default:
			I = true;
			break
	}
	A = L();
	if (_.$wdate) M(A + "skin/wdatePicker.css");
	V = X;
	if (_.$crossFrame) {
		try {
			while (V.parent && V.parent[O] != V[O] && V.parent[O][C]("frameset").length == 0) V = V.parent
		} catch (P) {}
	}
	if (!V.$dp) V.$dp = {
		ff: I,
		ie: T,
		opera: b,
		el: null,
		win: X,
		status: 0,
		defMinDate: _.minDate,
		defMaxDate: _.maxDate,
		flatCfgs: []
	};
	B();
	if ($dp.status == 0) Z(X, function() {
		U(null, true)
	});
	if (!X[O].docMD) {
		E(X[O], "onmousedown", D);
		X[O].docMD = true
	}
	if (!V[O].docMD) {
		E(V[O], "onmousedown", D);
		V[O].docMD = true
	}
	E(X, "onunload", function() {
		if ($dp.dd) Q($dp.dd, "none")
	});

	function B() {
		V.$dp = V.$dp || {};
		obj = {
			$: function($) {
				return (typeof $ == "string") ? X[O].getElementById($) : $
			},
			$D: function($, _) {
				return this.$DV(this.$($).value, _)
			},
			$DV: function(_, $) {
				if (_ != "") {
					this.dt = $dp.cal.splitDate(_, $dp.cal.dateFmt);
					if ($)
						for (var B in $)
							if (this.dt[B] === undefined) this.errMsg = "invalid property:" + B;
							else {
								this.dt[B] += $[B];
								if (B == "M") {
									var C = $["M"] > 0 ? 1 : 0,
										A = new Date(this.dt["y"], this.dt["M"], 0).getDate();
									this.dt["d"] = Math.min(A + C, this.dt["d"])
								}
							}
					if (this.dt.refresh()) return this.dt
				}
				return ""
			},
			show: function() {
				var A = V[O].getElementsByTagName("div"),
					$ = 100000;
				for (var B = 0; B < A.length; B++) {
					var _ = parseInt(A[B].style.zIndex);
					if (_ > $) $ = _
				}
				this.dd.style.zIndex = $ + 2;
				Q(this.dd, "block")
			},
			hide: function() {
				Q(this.dd, "none")
			},
			attachEvent: E
		};
		for (var $ in obj) V.$dp[$] = obj[$];
		$dp = V.$dp;
		$dp.dd = V[O].getElementById("_my97DP")
	}

	function E(A, $, _) {
		if (T) A.attachEvent($, _);
		else if (_) {
			var B = $.replace(/on/, "");
			_._ieEmuEventHandler = function($) {
				return _($)
			};
			A.addEventListener(B, _._ieEmuEventHandler, false)
		}
	}

	function L() {
		var _, A, $ = X[O][C]("script");
		for (var B = 0; B < $.length; B++) {
			_ = $[B].src.substring(0, $[B].src.toLowerCase().indexOf("wdatepicker.js"));
			A = _.lastIndexOf("/");
			if (A > 0) _ = _.substring(0, A + 1);
			if (_) break
		}
		return _
	}

	function F(F) {
		var E, C;
		if (F.substring(0, 1) != "/" && F.indexOf("://") == -1) {
			E = V.location.href;
			C = location.href;
			if (E.indexOf("?") > -1) E = E.substring(0, E.indexOf("?"));
			if (C.indexOf("?") > -1) C = C.substring(0, C.indexOf("?"));
			var G, I, $ = "",
				D = "",
				A = "",
				J, H, B = "";
			for (J = 0; J < Math.max(E.length, C.length); J++) {
				G = E.charAt(J).toLowerCase();
				I = C.charAt(J).toLowerCase();
				if (G == I) {
					if (G == "/") H = J
				} else {
					$ = E.substring(H + 1, E.length);
					$ = $.substring(0, $.lastIndexOf("/"));
					D = C.substring(H + 1, C.length);
					D = D.substring(0, D.lastIndexOf("/"));
					break
				}
			}
			if ($ != "")
				for (J = 0; J < $.split("/").length; J++) B += "../";
			if (D != "") B += D + "/";
			F = E.substring(0, E.lastIndexOf("/") + 1) + B + F
		}
		_.$dpPath = F
	}

	function M(A, $, B) {
		var D = X[O][C]("HEAD").item(0),
			_ = X[O].createElement("link");
		if (D) {
			_.href = A;
			_.rel = "stylesheet";
			_.type = "text/css";
			if ($) _.title = $;
			if (B) _.charset = B;
			D.appendChild(_)
		}
	}

	function Z($, _) {
		E($, "onload", _)
	}

	function G($) {
		$ = $ || V;
		var A = 0,
			_ = 0;
		while ($ != V) {
			var D = $.parent[O][C]("iframe");
			for (var F = 0; F < D.length; F++) {
				try {
					if (D[F].contentWindow == $) {
						var E = W(D[F]);
						A += E.left;
						_ += E.top;
						break
					}
				} catch (B) {}
			}
			$ = $.parent
		}
		return {
			"leftM": A,
			"topM": _
		}
	}

	function W(F) {
		if (F.getBoundingClientRect) return F.getBoundingClientRect();
		else {
			var A = {
					ROOT_TAG: /^body|html$/i,
					OP_SCROLL: /^(?:inline|table-row)$/i
				},
				E = false,
				H = null,
				_ = F.offsetTop,
				G = F.offsetLeft,
				D = F.offsetWidth,
				B = F.offsetHeight,
				C = F.offsetParent;
			if (C != F)
				while (C) {
					G += C.offsetLeft;
					_ += C.offsetTop;
					if (S(C, "position").toLowerCase() == "fixed") E = true;
					else if (C.tagName.toLowerCase() == "body") H = C.ownerDocument.defaultView;
					C = C.offsetParent
				}
			C = F.parentNode;
			while (C.tagName && !A.ROOT_TAG.test(C.tagName)) {
				if (C.scrollTop || C.scrollLeft)
					if (!A.OP_SCROLL.test(Q(C)))
						if (!b || C.style.overflow !== "visible") {
							G -= C.scrollLeft;
							_ -= C.scrollTop
						}
				C = C.parentNode
			}
			if (!E) {
				var $ = a(H);
				G -= $.left;
				_ -= $.top
			}
			D += G;
			B += _;
			return {
				"left": G,
				"top": _,
				"right": D,
				"bottom": B
			}
		}
	}

	function N($) {
		$ = $ || V;
		var B = $[O],
			A = ($.innerWidth) ? $.innerWidth : (B[J] && B[J].clientWidth) ? B[J].clientWidth : B.body.offsetWidth,
			_ = ($.innerHeight) ? $.innerHeight : (B[J] && B[J].clientHeight) ? B[J].clientHeight : B.body.offsetHeight;
		return {
			"width": A,
			"height": _
		}
	}

	function a($) {
		$ = $ || V;
		var B = $[O],
			A = B[J],
			_ = B.body;
		B = (A && A.scrollTop != null && (A.scrollTop > _.scrollTop || A.scrollLeft > _.scrollLeft)) ? A : _;
		return {
			"top": B.scrollTop,
			"left": B.scrollLeft
		}
	}

	function D($) {
		var _ = $ ? ($.srcElement || $.target) : null;
		try {
			if ($dp.cal && !$dp.eCont && $dp.dd && _ != $dp.el && $dp.dd.style.display == "block") $dp.cal.close()
		} catch ($) {}
	}

	function Y() {
		$dp.status = 2;
		H()
	}

	function H() {
		if ($dp.flatCfgs.length > 0) {
			var $ = $dp.flatCfgs.shift();
			$.el = {
				innerHTML: ""
			};
			$.autoPickDate = true;
			$.qsEnabled = false;
			K($)
		}
	}
	var R, $;

	function U(J, C) {
		$dp.win = X;
		B();
		J = J || {};
		if (C) {
			if (!G()) {
				$ = $ || setInterval(function() {
					if (V[O].readyState == "complete") clearInterval($);
					U(null, true)
				}, 50);
				return
			}
			if ($dp.status == 0) {
				$dp.status = 1;
				K({
					el: {
						innerHTML: ""
					}
				}, true)
			} else return
		} else if (J.eCont) {
			J.eCont = $dp.$(J.eCont);
			$dp.flatCfgs.push(J);
			if ($dp.status == 2) H()
		} else {
			if ($dp.status == 0) {
				U(null, true);
				return
			}
			if ($dp.status != 2) return;
			var F = D();
			if (F) {
				$dp.srcEl = F.srcElement || F.target;
				F.cancelBubble = true
			}
			$dp.el = J.el = $dp.$(J.el || $dp.srcEl);
			if (!$dp.el || $dp.el["My97Mark"] === true || $dp.el.disabled || ($dp.el == $dp.el && Q($dp.dd) != "none" && $dp.dd.style.left != "-1970px")) {
				$dp.el["My97Mark"] = false;
				return
			}
			K(J);
			if (F && $dp.el.nodeType == 1 && $dp.el["My97Mark"] === undefined) {
				$dp.el["My97Mark"] = false;
				var _, A;
				if (F.type == "focus") {
					_ = "onclick";
					A = "onfocus"
				} else {
					_ = "onfocus";
					A = "onclick"
				}
				E($dp.el, _, $dp.el[A])
			}
		}

		function G() {
			if (T && V != X && V[O].readyState != "complete") return false;
			return true
		}

		function D() {
			if (I) {
				func = D.caller;
				while (func != null) {
					var $ = func.arguments[0];
					if ($ && ($ + "").indexOf("Event") >= 0) return $;
					func = func.caller
				}
				return null
			}
			return event
		}
	}

	function S(_, $) {
		return _.currentStyle ? _.currentStyle[$] : document.defaultView.getComputedStyle(_, false)[$]
	}

	function Q(_, $) {
		if (_)
			if ($ != null) _.style.display = $;
			else return S(_, "display")
	}

	function K(H, $) {
		for (var D in _)
			if (D.substring(0, 1) != "$") $dp[D] = _[D];
		for (D in H)
			if ($dp[D] !== undefined) $dp[D] = H[D];
		var E = $dp.el ? $dp.el.nodeName : "INPUT";
		if ($ || $dp.eCont || new RegExp(/input|textarea|div|span|p|a/ig).test(E)) $dp.elProp = E == "INPUT" ? "value" : "innerHTML";
		else return;
		if ($dp.lang == "auto") $dp.lang = T ? navigator.browserLanguage.toLowerCase() : navigator.language.toLowerCase();
		if (!$dp.dd || $dp.eCont || ($dp.lang && $dp.realLang && $dp.realLang.name != $dp.lang && $dp.getLangIndex && $dp.getLangIndex($dp.lang) >= 0)) {
			if ($dp.dd && !$dp.eCont) V[O].body.removeChild($dp.dd);
			if (_.$dpPath == "") F(A);
			var B = "<iframe style=\"width:1px;height:1px\" src=\"" + _.$dpPath + "My97DatePicker.htm\" frameborder=\"0\" border=\"0\" scrolling=\"no\"></iframe>";
			if ($dp.eCont) {
				$dp.eCont.innerHTML = B;
				Z($dp.eCont.childNodes[0], Y)
			} else {
				$dp.dd = V[O].createElement("DIV");
				$dp.dd.id = "_my97DP";
				$dp.dd.style.cssText = "position:absolute";
				$dp.dd.innerHTML = B;
				V[O].body.appendChild($dp.dd);
				Z($dp.dd.childNodes[0], Y);
				if ($) $dp.dd.style.left = $dp.dd.style.top = "-1970px";
				else {
					$dp.show();
					C()
				}
			}
		} else if ($dp.cal) {
			$dp.show();
			$dp.cal.init();
			if (!$dp.eCont) C()
		}

		function C() {
			var F = $dp.position.left,
				B = $dp.position.top,
				C = $dp.el;
			if (C != $dp.srcEl && (Q(C) == "none" || C.type == "hidden")) C = $dp.srcEl;
			var H = W(C),
				$ = G(X),
				D = N(V),
				A = a(V),
				E = $dp.dd.offsetHeight,
				_ = $dp.dd.offsetWidth;
			if (isNaN(B)) {
				if (B == "above" || (B != "under" && (($.topM + H.bottom + E > D.height) && ($.topM + H.top - E > 0)))) B = A.top + $.topM + H.top - E - 2;
				else B = A.top + $.topM + Math.min(H.bottom, D.height - E) + 2
			} else B += A.top + $.topM;
			if (isNaN(F)) F = A.left + Math.min($.leftM + H.left, D.width - _ - 5) - (T ? 2 : 0);
			else F += A.left + $.leftM;
			$dp.dd.style.top = B + "px";
			$dp.dd.style.left = F + "px"
		}
	}
})()
$(function() {

	$('.Wdate').focus(function() {
		var _dateFmt = "yyyy-MM-dd";
		if ($(this).attr("dateFmt")) {
			_dateFmt = $(this).attr("dateFmt");
		}
		WdatePicker({
			el: this,
			autoPickDate: true,
			dateFmt: _dateFmt,
			readOnly: true
		});
	})
	$('.Wdate').click(function() {
		var _dateFmt = "yyyy-MM-dd";
		if ($(this).attr("dateFmt")) {
			_dateFmt = $(this).attr("dateFmt");
		}
		WdatePicker({
			el: this,
			autoPickDate: true,
			dateFmt: _dateFmt,
			readOnly: true
		});
	})
});

function loadWdate() {
	$('.Wdate').focus(function() {
		var _dateFmt = "yyyy-MM-dd";
		if ($(this).attr("dateFmt")) {
			_dateFmt = $(this).attr("dateFmt");
		}
		WdatePicker({
			el: this,
			autoPickDate: true,
			dateFmt: _dateFmt,
			readOnly: true
		});
	})
	$('.Wdate').click(function() {
		var _dateFmt = "yyyy-MM-dd";
		if ($(this).attr("dateFmt")) {
			_dateFmt = $(this).attr("dateFmt");
		}
		WdatePicker({
			el: this,
			autoPickDate: true,
			dateFmt: _dateFmt,
			readOnly: true
		});
	})
}